aboutsummaryrefslogtreecommitdiff
path: root/pages/anime/watch/[...info].js
diff options
context:
space:
mode:
authorFactiven <[email protected]>2023-05-28 20:27:27 +0700
committerGitHub <[email protected]>2023-05-28 20:27:27 +0700
commit1242c3ed6b2572f4be4d7a5cc3409601a18a36dc (patch)
tree83d83fe16297bf600f60bae94dd815bfb9f654c1 /pages/anime/watch/[...info].js
parentUpdate README.md (diff)
downloadmoopa-1242c3ed6b2572f4be4d7a5cc3409601a18a36dc.tar.xz
moopa-1242c3ed6b2572f4be4d7a5cc3409601a18a36dc.zip
Update v3.6.2
> Added Zoro and Enime provider
Diffstat (limited to 'pages/anime/watch/[...info].js')
-rw-r--r--pages/anime/watch/[...info].js53
1 files changed, 33 insertions, 20 deletions
diff --git a/pages/anime/watch/[...info].js b/pages/anime/watch/[...info].js
index b3d02cf..c1ec46e 100644
--- a/pages/anime/watch/[...info].js
+++ b/pages/anime/watch/[...info].js
@@ -39,6 +39,8 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
const router = useRouter();
+ // console.log(data);
+
useEffect(() => {
const defaultState = {
epiData: null,
@@ -72,7 +74,7 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
try {
if (provider) {
const res = await fetch(
- `https://api.consumet.org/meta/anilist/watch/${id}?provider=9anime`
+ `https://api.moopa.my.id/meta/anilist/watch/${id}?provider=${provider}`
);
const epiData = await res.json();
setEpiData(epiData);
@@ -94,9 +96,10 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
if (provider) {
const res = await fetch(
- `https://api.consumet.org/meta/anilist/info/${aniId}?provider=9anime`
+ `https://api.moopa.my.id/meta/anilist/info/${aniId}?provider=${provider}`
);
aniData = await res.json();
+ setEpisodes(aniData.episodes?.reverse());
setAniData(aniData);
} else {
const res2 = await fetch(
@@ -220,22 +223,32 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
<div className="min-h-screen mt-3 md:mt-0 flex flex-col lg:gap-0 gap-5 lg:flex-row lg:py-10 lg:px-10 justify-start w-screen">
<div className="w-screen lg:w-[67%]">
{loading ? (
- <div className="aspect-video z-20 bg-black">
- <VideoPlayer
- key={id}
- data={epiData}
- id={id}
- progress={parseInt(playingEpisode)}
- session={sessions}
- aniId={parseInt(data?.id)}
- stats={statusWatch}
- op={skip.op}
- ed={skip.ed}
- title={playingTitle}
- poster={poster[0]?.image}
- proxy={proxy}
- />
- </div>
+ Array.isArray(epiData?.sources) ? (
+ <div className="aspect-video z-20 bg-black">
+ <VideoPlayer
+ key={id}
+ data={epiData}
+ id={id}
+ progress={parseInt(playingEpisode)}
+ session={sessions}
+ aniId={parseInt(data?.id)}
+ stats={statusWatch}
+ op={skip.op}
+ ed={skip.ed}
+ title={playingTitle}
+ poster={poster[0]?.image}
+ proxy={proxy}
+ provider={provider}
+ />
+ </div>
+ ) : (
+ <div className="aspect-video bg-black flex-center select-none">
+ <p className="lg:p-0 p-5 text-center">
+ Whoops! Something went wrong. Please reload the page or
+ try other sources. {`:(`}
+ </p>
+ </div>
+ )
) : (
<div className="aspect-video bg-black" />
)}
@@ -441,7 +454,7 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
return (
<Link
href={`/anime/watch/${item.id}/${data.id}${
- provider ? "/9anime" : ""
+ provider ? `/${provider}` : ""
}`}
key={item.id}
className={`bg-secondary flex w-full h-[110px] rounded-lg scale-100 transition-all duration-300 ease-out ${
@@ -476,7 +489,7 @@ export default function Info({ sessions, id, aniId, provider, proxy }) {
: "0",
}}
/>
- <span className="absolute bottom-2 left-2 font-karla font-light text-sm">
+ <span className="absolute bottom-2 left-2 font-karla font-bold text-sm">
Episode {item.number}
</span>
{item.id == id && (